home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / vchat_logs.nasl < prev    next >
Text File  |  2005-01-14  |  2KB  |  105 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6. # Ref:
  7. #  Date: 23 Mar 2003 02:24:23 -0000
  8. #  From: subj <r2subj3ct@dwclan.org>
  9. #  To: bugtraq@securityfocus.com
  10. #  Subject: VChat
  11.  
  12.  
  13.  
  14. if(description)
  15. {
  16.  script_id(11471);
  17.  script_bugtraq_id(7186, 7188);
  18.  script_version ("$Revision: 1.4 $");
  19.  
  20.  
  21.  
  22.  name["english"] = "VChat information disclosure";
  23.  
  24.  script_name(english:name["english"]);
  25.  
  26.  desc["english"] = "
  27. It is possible to retrieve the log of all the chat sessions
  28. that have occured on the remote vchat server by requesting
  29. the file vchat/msg.txt
  30.  
  31. An attacker may use this flaw to read past chat sessions and
  32. possibly harass its participants.
  33.  
  34.  
  35. In addition to this, another flaw in the same product may allow an attacker
  36. to consume all the resources of the remote host by sending a long 
  37. message to this module.
  38.  
  39. Solution : None at this time. Add a .htaccess file to prevent an attacker
  40. from obtaining this file
  41.  
  42. Risk factor : Low";
  43.  
  44.  
  45.  
  46.  script_description(english:desc["english"]);
  47.  
  48.  summary["english"] = "Checks for the presence of vchat/msg.txt";
  49.  
  50.  script_summary(english:summary["english"]);
  51.  
  52.  script_category(ACT_ATTACK);
  53.  
  54.  
  55.  script_copyright(english:"This script is Copyright (C) 2003 Renaud Deraison",
  56.         francais:"Ce script est Copyright (C) 2003 Renaud Deraison");
  57.  family["english"] = "CGI abuses";
  58.  family["francais"] = "Abus de CGI";
  59.  script_family(english:family["english"], francais:family["francais"]);
  60.  script_dependencie("find_service.nes", "http_version.nasl");
  61.  script_require_ports("Services/www", 80);
  62.  exit(0);
  63. }
  64.  
  65. #
  66. # The script code starts here
  67. #
  68.  
  69.  
  70. include("http_func.inc");
  71. include("http_keepalive.inc");
  72.  
  73. port = get_http_port(default:80);
  74.  
  75. if(!get_port_state(port))exit(0);
  76.  
  77.  
  78.  
  79.  
  80. gdir = make_list(cgi_dirs());
  81.  
  82. dirs = make_list("", "/vchat", "/chat");
  83. foreach d (gdir)
  84. {
  85.   dirs = make_list(dirs, string(d, "/vchat"), string(d, "/chat"), d);
  86. }
  87.  
  88.  
  89. foreach dir (dirs)
  90. {
  91.  req = http_get(item:string(dir, "/msg.txt"), port:port);
  92.  res = http_keepalive_send_recv(port:port, data:req);
  93.  
  94.  if( res == NULL ) exit(0);
  95.  
  96.  if(egrep(pattern:"HTTP/.* 200 .*", string:res))
  97.  {
  98.   if(egrep(pattern:"^<b>.* :</b>.*<br>$", string:res))
  99.   {
  100.    security_warning(port);
  101.    exit(0);
  102.   }
  103.  }
  104. }
  105.